package com.zut.questionnaire.service;

import com.zut.questionnaire.pojo.Questionnaire;
import com.zut.questionnaire.pojo.Result;
import com.zut.questionnaire.repository.QuestionnaireRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.time.LocalDateTime;
import java.util.Optional;

@Transactional
@Service
public class QuestionnaireService {

    @Autowired
    private QuestionnaireRepository questionnaireRepository;

    public Result findById(String id){

        Optional<Questionnaire> optionalQuestionnaire = questionnaireRepository.findById(id);

        Questionnaire questionnaire=null;

        if(optionalQuestionnaire.isPresent()){
            questionnaire = optionalQuestionnaire.get();

            return Result.OK(questionnaire);
        }
        return Result.ERROR(500,"查询id不存在");
    }

    public Result save(Questionnaire questionnaire){

        questionnaire.setCreationDate(LocalDateTime.now());

        questionnaireRepository.save(questionnaire);

        return Result.OK();
    }

    public Result update(String id,Questionnaire questionnaire){
        questionnaire.setId(id);
        questionnaireRepository.save(questionnaire);

        return Result.OK();
    }

    public Result deleteById(String id){

        questionnaireRepository.deleteById(id);

        return Result.OK();
    }

    public Result delete(Questionnaire questionnaire){

        questionnaireRepository.delete(questionnaire);

        return Result.OK();
    }

}
